package com.lz.springboot.mongo.dao;

import java.util.List;
import java.util.Map;

public interface BaseMongoDaoI<T> {

	public abstract List<T> findList(int skip, int limit);
	
	public abstract List<T> findList(Map<String, Object> queryParams);

	public abstract List<T> findList(Map<String, Object> queryParams, int skip, int rows);

	public abstract T findOne(Map<String, Object> queryParams);
	
	public abstract long count(Map<String, Object> queryParams);

	public abstract void insert(T t);

	public abstract int update(String id, Map<String, Object> updateParams);
	
	public abstract int update(Map<String, Object> queryParams, Map<String, Object> updateParams);
	
	public abstract int upsert(Map<String, Object> queryParams, Map<String, Object> updateParams);

	public abstract int deleteById(String id);

}